1. 9.3 距离度量
1.1. 学习目标
- 了解距离公式的基本性质
- 知道机器学习中常见的距离计算公式
1.2. 1 距离公式的基本性质
在机器学习过程中,对于函数 dist(),若它是一"距离度量" (distance measure),则需满足一些基本性质:
直递性常被直接称为“三角不等式”。
1.3. 2 常见的距离公式
1.3.1. 2.1 欧式距离
欧氏距离(Euclidean Distance)是最容易直观理解的距离度量方法,我们小学、初中和高中接触到的两个点在空间中的距离一般都是指欧氏距离。
举例:
X=[[1,1],[2,2],[3,3],[4,4]];
经计算得:
d = 1.4142 2.8284 4.2426 1.4142 2.8284 1.4142
1.3.2. 2.2 曼哈顿距离
在曼哈顿街区要从一个十字路口开车到另一个十字路口,驾驶距离显然不是两点间的直线距离。这个实际驾驶距离就是“曼哈顿距离(Manhattan Distance)”。曼哈顿距离也称为“城市街区距离”(City Block distance)。
举例:
X=[[1,1],[2,2],[3,3],[4,4]];
经计算得:
d = 2 4 6 2 4 2
1.3.3. 2.3 切比雪夫距离
国际象棋中,国王可以直行、横行、斜行,所以国王走一步可以移动到相邻8个方格中的任意一个。国王从格子(x1,y1)走到格子(x2,y2)最少需要多少步?这个距离就叫切比雪夫距离(Chebyshev Distance)。
举例:
X=[[1,1],[2,2],[3,3],[4,4]];
经计算得:
d = 1 2 3 1 2 1
1.3.4. 2.4 闵可夫斯基距离
闵氏距离(Minkowski Distance)不是一种距离,而是一组距离的定义,是对多个距离度量公式的概括性的表述。
两个n维变量a(x11,x12,…,x1n)与b(x21,x22,…,x2n)间的闵可夫斯基距离定义为:
其中p是一个变参数:
- 当p=1时,就是曼哈顿距离;
- 当p=2时,就是欧氏距离;
- 当p→∞时,就是切比雪夫距离。
根据p的不同,闵氏距离可以表示某一类/种的距离。
小结:
1 闵氏距离,包括曼哈顿距离、欧氏距离和切比雪夫距离,都存在明显的缺点:
e.g. 二维样本(身高[单位:cm],体重[单位:kg]),现有三个样本:a(180,50),b(190,50),c(180,60)。
a与b的闵氏距离(无论是曼哈顿距离、欧氏距离或切比雪夫距离)等于a与c的闵氏距离。但实际上身高的10cm并不能和体重的10kg划等号。
2 闵氏距离的缺点:
(1)将各个分量的量纲(scale),也就是“单位”相同的看待了;
(2)未考虑各个分量的分布(期望,方差等)可能是不同的。
1.4. 3 “连续属性”和“离散属性”的距离计算
我们常将属性划分为"连续属性" (continuous attribute)和"离散属性" (categorical attribute),前者在定义域上有无穷多个可能的取值,后者在定义域上是有限个取值.
- 若属性值之间存在序关系,则可以将其转化为连续值,例如:身高属性“高”“中等”“矮”,可转化为{1, 0.5, 0}。
- 闵可夫斯基距离可以用于有序属性。
- 若属性值之间不存在序关系,则通常将其转化为向量的形式,例如:性别属性“男”“女”,可转化为{(1,0),(0,1)}。
1.5. 4 小结
- 1 距离公式的基本性质:非负性、统一性、对称性、直递性【了解】
- 2 常见距离公式
- 2.1 欧式距离(Euclidean Distance)【知道】:
- 通过距离平方值进行计算
- 2.曼哈顿距离(Manhattan Distance)【知道】:
- 通过距离的绝对值进行计算
- 3.切比雪夫距离 (Chebyshev Distance)【知道】:
- 维度的最大值进行计算
- 4.闵可夫斯基距离(Minkowski Distance)【知道】:
- 当p=1时,就是曼哈顿距离;
- 当p=2时,就是欧氏距离;
- 当p→∞时,就是切比雪夫距离。
- 2.1 欧式距离(Euclidean Distance)【知道】:
- 3 属性【知道】
- 连续属性
- 离散属性,
- 存在序关系,可以将其转化为连续值
- 不存在序关系,通常将其转化为向量的形式